home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / cbibcode.arc / MAX.C < prev    next >
Encoding:
C/C++ Source or Header  |  1991-08-05  |  895 b   |  46 lines

  1.  /* max.c from page 228*/
  2.  #include <stdio.h>
  3.  #include <stdlib.h>
  4.  main(int argc, char **argv)
  5.  {
  6.     int i1, i2, ir;
  7.     long l1, l2, lr;
  8.     double d1, d2, dr;
  9.     if(argc < 4)
  10.     {
  11.         printf("usage: %s <type> <value1> <value2>\n",
  12.             argv[0]);
  13.         }
  14.         else
  15.         {
  16.         switch(argv[1][0])
  17.         {
  18.             case 'i':
  19.             case 'I':
  20.                 i1 = atoi(argv[2]);
  21.                 i2 = atoi(argv[3]);
  22.                 ir = max(i1, i2);
  23.                 printf("Larger of %d and %d = % d\n",
  24.                     i1, i2, ir);
  25.                 break;
  26.             case 'l':
  27.             case 'L':
  28.                 l1 = atol(argv[2]);
  29.                 l2 = atol(argv[3]);
  30.                 lr = max(l1, l2);
  31.                 printf("Larger of %d and % 1d = % ld\n",
  32.                     l1, l2, lr);
  33.                 break;
  34.             case 'd':
  35.             case 'D':
  36.                 d1 = atof(argv[2]);
  37.                 d2 = atof(argv[3]);
  38.                 dr = max (d1, d2);
  39.                 printf("Larger of %g and %g = %g\n",
  40.                     d1, d2, dr);
  41.                 break;
  42.             default: printf("Don' t know type: %c\n",
  43.                     argv[1][0]);
  44.         }
  45.     }
  46.  }